package com.sen.common.utils.time;

import java.util.Date;

import org.apache.commons.lang.time.DateUtils;

/**
 * 日期秒数工具类.
 * 
 * @author sen
 */
public final class SecondsUtils {

	private SecondsUtils() {
		// empty!
	}
	
	/**
	 * 获取当前时间的秒数.
	 */
	public static Long seconds() {
		return seconds(System.currentTimeMillis());
	}
	
	/**
	 * 把日期型转换为秒数.
	 */
	public static Long seconds(Date date) {
		return seconds(date.getTime());
	}
	
	/**
	 * 把毫秒数转换为秒数.
	 */
	public static Long seconds(Long millis) {
		return millis / DateUtils.MILLIS_PER_SECOND;
	}
	
	/**
	 * 获取当前时间的毫秒数.
	 */
	public static Long millis() {
		return millis(seconds());
	}
	
	/**
	 * 把秒数转换为毫秒数.
	 */
	public static Long millis(Long seconds) {
		return seconds * DateUtils.MILLIS_PER_SECOND;
	}
	
	/**
	 * 把秒数转换为日期型.
	 */
	public static Date date(Long seconds) {
		return new Date(millis(seconds));
	}
}
